drizzlefandomcom-20200213-history
BuildBot
= Overview = The success of Drizzle will be due to the contributions of the community. You don't have to be a coder to contribute, there are many other areas including testing, documentation and contributing to the build process for example. Contributing a buildbot slave will help drizzle developers test across a various number of configurations. = Setup = To run a buildbot slave, you need to do. # Install Buildbot # Install Bazaar (used to obtain LaunchPad sourcs) # Make sure that all build dependencies are met # Send an email to drizzlebuild @ 42sql dot com with the following information #* Name (e.g. Joe Bloggs) #* OS - Name, Version & Architecture ( CentOS 5 64bit) #* uname -a # When you get a response, you will receive a build slave name (e.g. centos5_64) and a password (e.g. PaSSw0rd) # Follow the following slave instructions. # # Create separate user # # Recommended but not required to create a separate user # su - useradd buildbot su - buildbot # # Create Slave # buildbot create-slave /home/buildbot/slave drizzlebuild.42sql.com:9989 slavename password cd /home/buildbot/slave/info echo "Put Your Name Here < and some cryptic email text> ” > admin echo “Drizzle - Name Version & Architecture “`uname -a` > host cat admin host # # e.g. "Ronald Bradford < ronald.bradford @ Google Mail >" # e.g. "Drizzle - CentOS 5 64bit - # # # Start Slave # # cd /home/buildbot/slave buildbot start /home/buildbot/slave > start.log tail -f /home/buildbot/slave/twistd.log If all working you will be getting output immediately, as well as seeing a status at Drizzle Build Slaves Full details at Building sources with BuildBot = (Optional) Add script to /etc/init.d = If you follow all of the instructions provided in the very helpful article provided by Ronald Bradford you may have added the @reboot option to your cron, this is one way to launch buildbot (upon startup) but alternatively you could add a script to your /etc/init.d/ which will start and stop buildbot upon startup and shutdown respectively. #create the script nano /etc/init.d/drizzle-buildbot.sh #! /bin/sh #set path PATH=/sbin:/bin:/usr/bin #functions (adjuct to suit your paths) do_start () { cd /home/buildbot/slave buildbot start /home/buildbot/slave > start.log } do_stop () { cd /home/buildbot/slave buildbot stop /home/buildbot/slave } case "$1" in start|"") do_start ;; stop) do_stop ;; *) echo "Usage: drizzle-buildbot.sh start|stop" >&2 exit 3 ;; esac now you need to just create a symlink to this script into the /etc/rc2.d directory: #create symlink ln -s /etc/init.d/drizzle-buildbot.sh /etc/rc2.d/S99drizzle-buildbot.sh Now, whenever your system is started, buildbot will start. = Setting search paths = If your buildbot fails in configure because it cannot find your installation of library dependencies, consider setting the default environment of your buildbot user. For GCC you can set CPATH and LIBRARY_PATH to add more directories to the default include and library search paths. This allows you to install e.g. libevent in a non-standard place and still be able to become a buildbot slave without cluttering your standard paths. Category:Build = Buildslave Issues = If you're sure you've met all the dependencies listed on the PackageDependencies page and your slave is still having issues, try BuildSlaveIssues. it:BuildBot